home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 24
/
Aminet 24 (1998)(GTI - Schatztruhe)[!][Apr 1998].iso
/
Aminet
/
dev
/
e
/
AEPD08.lha
/
EPD08
/
Dies_und_das
/
Inhalt_EPD1-7.info
< prev
next >
Wrap
Text File
|
1994-07-26
|
1KB
|
76 lines
/*ORIGINALE in " C " 1992 (C) Matthias Zepf für Amiga Plus 11/92 */
/* Umsetzung auf AmigaE FB 1994 */
DEF feld[110]:ARRAY OF LONG,anzahle
/* "feld[]" enthält die zu sortierenden Zahlen
"anzahle" die anzahl der zu sortierenden zahlen*/
PROC main()
WriteF('\n\n')
zufall() /* Erzeugung der Zufallszahlen*/
WriteF('Zufall:\n')
zeigen() /* Zahlen zeigen*/
shellsort()
WriteF('shellsort \n')
zeigen()
WriteF('\n\n')
zufall()
WriteF('Zufall:\n')
zeigen()
rhepsort()
WriteF('hepsort recursiv\n')
zeigen()
WriteF('\n\n')
zufall()
WriteF('Zufall:\n')
zeigen()
ihepsort()
WriteF('hepsort interactiv\n')
zeigen()
WriteF('\n')
ENDPROC
PROC zeigen()
DEF i,j
i:=0
REPEAT
j:=0
REPEAT
WriteF ('\d[4]',feld[(i*15)+j])
INC j
UNTIL j=15
WriteF('\n')
INC i
UNTIL i=7
ENDPROC
/* shellsort--------------------------------------------*/
PROC shellsort ()
DEF i,j,k,l,m,wert
l:=41
WHILE l>0
m:=0
WHILE m<l
i:=m+l
WHILE i< anzahle
wert:=feld[i]
j:=i
WHILE ((j-l)>=0) AND (feld[j-l]>wert)
j:=j-l
ENDWHILE
IF j<>i
k:=i